perfect vs optimal